材料力学上机大作业—梁的强度校核.pdf

上传人:1398****507 文档编号:73500558 上传时间:2023-02-19 格式:PDF 页数:28 大小:1.06MB
返回 下载 相关 举报
材料力学上机大作业—梁的强度校核.pdf_第1页
第1页 / 共28页
材料力学上机大作业—梁的强度校核.pdf_第2页
第2页 / 共28页
点击查看更多>>
资源描述

《材料力学上机大作业—梁的强度校核.pdf》由会员分享,可在线阅读,更多相关《材料力学上机大作业—梁的强度校核.pdf(28页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、实用文档.材料力学上机作业 题目五:梁的强度校核 实用文档.摘要本程序使用 Microsoft Visual Basic 编写,由输入梁的支撑条件,输入梁的受力状态,实现了梁危险截面的最大正应力计算与梁的强度校核。在校核结果为否定的情况下还可由许用应力值进行部分截面设计和许用载荷计算等功能。数学原理及数学模型 材料力学公式有:1.梁弯曲正应力公式 zzxWMm ax 2.抗弯截面系数 矩形截面 62bhWz 圆形截面 323dWz 空心圆截面 )1(3243DWz ,式中 Dd 3.采用一定数量级上的穷举法计算出最大弯矩 Mz。VB 所做软件 1.软件部分窗体截图 实用文档.实用文档.2.程序

2、结构图 实用文档.3.不安全 安全 开始 选择支撑条件 悬臂梁直接计算出各截面弯矩并找出最大值 Mz 外伸梁和简支梁根据受力情况求出支反力 fa 和 fb,进而求 Mz 选择截面形状和输入尺寸计算抗弯截面系数 矩形截面输入宽b和高h计算得 Wz 圆截面输入直径 d 计算得 Wz 空心截面输入内外直径D、d 求得Wz 工字钢直接查表输入 Wz 求出正应力并与许用应力比较 结束 进行截面设计和许用载荷计算 输入受力情 况 实用文档.应用实例 1.验证新编材料力学书中 P247 例 12-9 该题由正应力强度条件求得题中矩形截面悬臂梁许用载荷为 q9.1kN/m,现加载q=8kN/m,看是否符合正应

3、力强度要求。已知左悬臂梁 l=3m,=120Mpa,b=80mm,h=160mm,整个梁承受向下的均布载荷 q 解:1.运行程序进入主页面 2.点击开始并选择支撑条件为左固定端悬臂梁,点击确定。如图 3.选择梁的截面形状并输入尺寸参数,点击确定。如图 实用文档.4.输入受力条件,点击确定进行计算。如图 5.程序运行结果如图 实用文档.计算结果与实际运算结果相同 2.求解新编材料力学P246 例 12-8。解:1.运行程序计入主界面,点击开始。2.选择支撑条件为右外伸梁,点击确定。3.选择梁的截面形状并输入尺寸,点击确定。如图,(不妨先设 b=10,h=30。注意,应避免 b 或 h 为零以防止

4、出现除数为零的情况使程序出错)4.输入受力情况及右支架位置并点击确定,如图(如果未能输入右支架位置,可能使程序出错)实用文档.5.得到计算结果 计算结果与答案 b=30mm,h=60mm 一致,不过以截面抗弯系数代替截面具体尺寸。其中小数点后的微量误差受穷举法所采用数量级的影响。值得注意的是,由于本程序涉及的截面形状及载荷种类较多,而且载荷位置不固定,因此截面设计和许用载荷计算难以得到最终的具体结果。时间仓促,为减小工作量,本程序将许用载荷计算简化为梁截面所能承受的最大弯矩的计算。将截面设计略微简化为截面最小抗弯系数的设计。验证表明,计算结果同样精确。主要算法代码和部分窗体截图:部分窗体截图:

5、Form9 窗体内源代码:Private Sub Command1_Click()进入实际工作界面 Form0.Show Me.Hide End Sub Private Sub Command2_Click()若点击“结束”按钮则结束程序 End End Sub Form0 窗体内源代码:实用文档.Public l As Double 声明变量 Public q As Double Public f1 As Double Public f2 As Double Public f As Double Public m1 As Double Public m2 As Double Public m

6、 As Double Public x As Double Public xa As Double Public xb As Double Public xq1 As Double Public xq2 As Double Public xf1 As Double Public xf2 As Double Public xm1 As Double Public xm2 As Double Public x1 As Double Public x2 As Double Public x3 As Double Public x4 As Double Public x5 As Double Publ

7、ic x6 As Double Public fa As Double Public fb As Double Public w As Double Public b As Double Public h As Double Public d1 As Double Public d2 As Double Public d3 As Double Public wz As Double Public syl As Double Public xyl As Double Public pi As Double Public zdzh As Double Private Sub Command1_Cl

8、ick()进入截面形状选择及尺寸参数输入界面 Form7.Show Me.Hide End Sub Private Sub Command2_Click()若点击“结束”按钮则终止程序 End 实用文档.End Sub Private Sub Form_Load()End Sub Private Sub Option1_Click()选择支撑条件 Option1.Value=True End Sub Private Sub Option2_Click()Option2.Value=True End Sub Private Sub Option3_Click()Option3.Value=Tru

9、e End Sub Private Sub Option4_Click()Option4.Value=True End Sub Private Sub Option5_Click()Option5.Value=True End Sub Private Sub Option6_Click()Option6.Value=True End Sub Form7 窗体内源代码:本窗体为截面形状选择及尺寸输入界面 Private Sub Command1_Click()If Form0.Option1.Value=True Then 根据用户选择的不同支撑条件调用不 jz.Show 同窗体 ElseIf

10、Form0.Option2.Value=True Then zxb.Show ElseIf Form0.Option3.Value=True Then yxb.Show ElseIf Form0.Option4.Value=True Then zws.Show ElseIf Form0.Option5.Value=True Then yws.Show Else sws.Show End If 实用文档.Me.Hide End Sub Private Sub Command2_Click()Form0.Show Me.Hide End Sub Private Sub Form_Load()End

11、 Sub Private Sub Option1_Click()选择不同的截面形状 Option1.Value=True End Sub Private Sub Option2_Click()Option2.Value=True End Sub Private Sub Option3_Click()Option3.Value=True End Sub Private Sub Option4_Click()Option4.Value=True End Sub Form1(简支梁)窗体内源代码:本窗体完成支撑条件简支梁部分计算 Private Sub Command1_Click()Dim i A

12、s Double Dim k As Double pi=3.1415926 给变量赋值 l=Val(Form7.l.Text)If Form7.Option1.Value=True Then 计算截面抗弯系数 b=Val(Form7.b.Text)h=Val(Form7.h.Text)wz=b*h 2/6 ElseIf Form7.Option2.Value=True Then d1=Val(Form7.d1.Text)wz=pi*d1 3/32 ElseIf Form7.Option3.Value=True Then d2=Val(Form7.d2.Text)d3=Val(Form7.D.T

13、ext)wz=pi*d3 3*(1-d2 4/d3 4)/32 实用文档.ElseIf Form7.Option4.Value=True Then wz=Val(Form7.wz.Text)End If f1=Val(f11.Text)通过用户输入,给变量赋值 f2=Val(f21.Text)xf1=Val(xf11.Text)xf2=Val(xf21.Text)m1=Val(m11.Text)m2=Val(m21.Text)xm1=Val(xm11.Text)xm2=Val(xm21.Text)q=Val(q1.Text)xq1=Val(xq11.Text)xq2=Val(xq21.Text

14、)If xf1 xf2 Then 确定 f1,f2 的位置前后,便于后续计算 k=f1 f1=f2 f2=k k=xf1 xf1=xf2 xf2=k End If If xm1 xm2 Then 确定 m1,m2 的位置前后,便于后续计算 k=m1 m1=m2 m2=k k=xm1 xm1=xm2 xm2=k End If l=l/1000 xf1=xf1/1000 xf2=xf2/1000 xm1=xm1/1000 xm2=xm2/1000 xq1=xq1/1000 xq2=xq2/1000 fb=(m1+m2+f1*xf1+f2*xf2+q*(xq2-xq1)*(xq1+xq2)/2)/l

15、 求支反力 fa=f1+f2+q*(xq2-xq1)-fb m=0 k=0 For i=0 To l Step l/1000000 该循环用于求截面最大弯矩 m=fa*i 实用文档.If xf1 i Then m=m-f1*(i-xf1)End If If xf2 i Then m=m-f2*(i-xf2)End If If xm1 i Then m=m+m1 End If If xm2 i Then m=m+m2 End If If xq1 i Then m=m-q*(i-xq1)2/2 End If If xq2 k 2 Then k=m End If Next i m=k 求得最大截面弯

16、矩 syl=m/wz 计算最大正应力 syl=(syl 2)0.5*10 3 Form8.Label3.Caption=实际最大正应力为&syl&Mpb 显示结果 xyl=Val(Form7.xyl.Text)zdzh=wz*xyl/10 3 许用载荷计算 w=m/xyl 截面设计计算 w=(w 2)0.5 If syl xyl Then Form8.Label1.Caption=由&syl&xyl&vbCrLf&vbclf&实际应力大于许用应力,不安全。&vbCrLf&vbCrLf&可改变梁的载荷使梁截面上最大弯矩小于等于&zdzh&N.m。&vbCrLf&vbCrLf&或者改变梁截面形状和

17、尺寸,使其截面抗弯系数大于等于&w&cm3 Else Form8.Label1.Caption=由&syl&xf2 Then k=f1 实用文档.f1=f2 f2=k k=xf1 xf1=xf2 xf2=k End If If xm1 xm2 Then k=m1 m1=m2 m2=k k=xm1 xm1=xm2 xm2=k End If l=l/1000 xf1=xf1/1000 xf2=xf2/1000 xm1=xm1/1000 xm2=xm2/1000 xq1=xq1/1000 xq2=xq2/1000 k=0 m=0 For i=0 To l Step l/1000000 m=0 If(

18、l-xf1)i Then m=m-f1*(i+xf1-l)End If If(l-xf2)i Then m=m-f2*(i+xf2-l)End If If(l-xm1)i Then m=m+m1 End If If(l-xm2)i Then m=m+m2 End If If(l-xq2)i Then m=m-q*(i+xq2-l)2/2 End If If(l-xq1)k 2 Then 实用文档.k=m End If Next i m=k syl=m/wz syl=(syl 2)0.5*10 3 Form8.Label3.Caption=实际最大正应力为&syl&Mpb xyl=Val(For

19、m7.xyl.Text)zdzh=wz*xyl/10 3 w=m/xyl w=(w 2)0.5 If syl xyl Then Form8.Label1.Caption=由&syl&xyl&vbCrLf&vbclf&实际应力大于许用应力,不安全。&vbCrLf&vbCrLf&可改变梁的载荷使梁截面上最大弯矩小于等于&zdzh&N.m。&vbCrLf&vbCrLf&或者改变梁截面形状和尺寸,使其截面抗弯系数大于等于&w&cm3 Else Form8.Label1.Caption=由&syl&xf2 Then k=f1 f1=f2 f2=k k=xf1 xf1=xf2 xf2=k End If I

20、f xm1 xm2 Then k=m1 m1=m2 m2=k k=xm1 xm1=xm2 xm2=k End If l=l/1000 xf1=xf1/1000 xf2=xf2/1000 xm1=xm1/1000 xm2=xm2/1000 xq1=xq1/1000 xq2=xq2/1000 k=0 For i=0 To l Step l/1000000 m=0 实用文档.If xf1 i Then m=m-f1*(i-xf1)End If If xq2 i Then m=m-f2*(i-xf2)End If If xm1 i Then m=m+m1 End If If xm2 i Then m=

21、m+m2 End If If xq1 i Then m=m-q*(i-xq1)2/2 End If If xq2 k 2 Then k=m End If Next i m=k syl=m/wz syl=(syl 2)0.5*10 3 Form8.Label3.Caption=实际最大正应力为&syl&Mpb xyl=Val(Form7.xyl.Text)zdzh=wz*xyl/10 3 w=m/xyl w=(w 2)0.5 If syl xyl Then Form8.Label1.Caption=由&syl&xyl&vbCrLf&vbclf&实际应力大于许用应力,不安全。&vbCrLf&vbC

22、rLf&可改变梁的载荷使梁截面上最大弯矩小于等于&zdzh&N.m。&vbCrLf&vbCrLf&或者改变梁截面形状和尺寸,使其截面抗弯系数大于等于&w&cm3 Else Form8.Label1.Caption=由&syl&xf2 Then k=f1 f1=f2 f2=k k=xf1 xf1=xf2 xf2=k End If 实用文档.If xm1 xm2 Then k=m1 m1=m2 m2=k k=xm1 xm1=xm2 xm2=k End If l=l/1000 xf1=xf1/1000 xf2=xf2/1000 xm1=xm1/1000 xm2=xm2/1000 xq1=xq1/10

23、00 xq2=xq2/1000 xa=xa/1000 fa=(-m1-m2+f1*(l-xf1)+f2*(l-xf2)+q*(xq2-xq1)*(2*l-xq1-xq2)/2)/(l-xa)fb=f1+f2+q*(xq2-xq1)-fa m=0 k=0 For i=0 To l Step l/1000000 m=0 If xa i Then m=m+fa*(i-xa)End If If xb i Then m=m+fb*(i-xb)End If If xf1 i Then m=m-f1*(i-xf1)End If If xq2 i Then m=m-f2*(i-xf2)End If If xm

24、1 i Then m=m+m1 End If If xm2 i Then m=m+m2 End If If xq1 i Then m=m-q*(i-xq1)2/2 End If If xq2 k 2 Then k=m End If Next i m=k syl=m/wz syl=(syl 2)0.5*10 3 Form8.Label3.Caption=实际最大正应力为&syl&Mpb xyl=Val(Form7.xyl.Text)zdzh=wz*xyl/10 3 w=m/xyl w=(w 2)0.5 If syl xyl Then Form8.Label1.Caption=由&syl&xyl&

25、vbCrLf&vbclf&实际应力大于许用应力,不安全。&vbCrLf&vbCrLf&可改变梁的载荷使梁截面上最大弯矩小于等于&zdzh&N.m。&vbCrLf&vbCrLf&或者改变梁截面形状和尺寸,使其截面抗弯系数大于等于&w&cm3 Else Form8.Label1.Caption=由&syl&xf2 Then k=f1 f1=f2 f2=k k=xf1 xf1=xf2 xf2=k End If If xm1 xm2 Then k=m1 m1=m2 m2=k k=xm1 xm1=xm2 xm2=k End If l=l/1000 xf1=xf1/1000 xf2=xf2/1000 xm

26、1=xm1/1000 xm2=xm2/1000 xq1=xq1/1000 xq2=xq2/1000 xb=xb/1000 实用文档.fb=(f1*xf1+f2*xf2+q*(xq2-xq1)*(xq1+xq2)/2-m1-m2)/xb fa=f1+f2+q*(xq2-xq1)-fb m=0 k=0 For i=0 To l Step l/1000000 m=0 If xa i Then m=m+fa*(i-xa)End If If xb i Then m=m+fb*(i-xb)End If If xf1 i Then m=m-f1*(i-xf1)End If If xf2 i Then m=m

27、-f2*(i-xf2)End If If xm1 i Then m=m+m1 End If If xm2 i Then m=m+m2 End If If xq1 i Then m=m-q*(i-xq1)2/2 End If If xq2 k 2 Then k=m End If Next i m=k syl=m/wz syl=(syl 2)0.5*10 3 Form8.Label3.Caption=实际最大正应力为&syl&Mpb xyl=Val(Form7.xyl.Text)zdzh=wz*xyl/10 3 w=m/xyl w=(w 2)0.5 If syl xyl Then Form8.La

28、bel1.Caption=由&syl&xyl&vbCrLf&vbclf&实际应力大于许用应力,不安实用文档.全。&vbCrLf&vbCrLf&可改变梁的载荷使梁截面上最大弯矩小于等于&zdzh&N.m。&vbCrLf&vbCrLf&或者改变梁截面形状和尺寸,使其截面抗弯系数大于等于&w&cm3 Else Form8.Label1.Caption=由&syl&xf2 Then k=f1 f1=f2 f2=k k=xf1 xf1=xf2 xf2=k End If If xm1 xm2 Then k=m1 m1=m2 m2=k k=xm1 xm1=xm2 xm2=k End If l=l/1000

29、xf1=xf1/1000 xf2=xf2/1000 xm1=xm1/1000 xm2=xm2/1000 xq1=xq1/1000 xq2=xq2/1000 xa=xa/1000 xb=xb/1000 fb=(m1+m2+f1*xf1+f2*xf2+q*(xq2-xq1)*(xq1+xq2)/2)-(f1+f2+q*(xq2-xq1)*xa/(xb-xa)fa=f1+f2+q*(xq2-xq1)-fb m=0 k=0 For i=0 To l Step l/1000000 m=0 If xa i Then m=m+fa*(i-xa)End If If xb i Then m=m+fb*(i-xb

30、)End If If xf1 i Then m=m-f1*(i-xf1)实用文档.End If If xf2 i Then m=m-f2*(i-xf2)End If If xm1 i Then m=m+m1 End If If xm2 i Then m=m+m2 End If If xq1 i Then m=m-q*(i-xq1)2/2 End If If xq2 k 2 Then k=m End If Next i m=k syl=m/wz syl=(syl 2)0.5*10 3 Form8.Label3.Caption=实际最大正应力为&syl&Mpb xyl=Val(Form7.xyl.

31、Text)zdzh=wz*xyl/10 3 w=m/xyl w=(w 2)0.5 If syl xyl Then Form8.Label1.Caption=由&syl&xyl&vbCrLf&vbclf&实际应力大于许用应力,不安全。&vbCrLf&vbCrLf&可改变梁的载荷使梁截面上最大弯矩小于等于&zdzh&N.m。&vbCrLf&vbCrLf&或者改变梁截面形状和尺寸,使其截面抗弯系数大于等于&w&cm3 Else Form8.Label1.Caption=由&syl&xyl&vbCrLf&vbCrLf&实际应力小于许用应力,安全 End If Form8.Show Me.Hide End Sub Private Sub Command2_Click()Form7.Show Me.Hide End Sub 实用文档.Form8 窗体内源代码 Private Sub Command1_Click()End End Sub

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 应用文书 > 工作报告

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁