您好,欢迎访问三七文档
当前位置:首页 > 建筑/环境 > 工程监理 > 哈工大材料力学上机报告--绘制梁的剪力弯矩图
HHaarrbbiinnIInnssttiittuutteeooffTTeecchhnnoollooggyy材材料料力力学学上上机机作作业业课程名称:材料力学设计题目:绘制梁的剪力弯矩图院系:机电工程学院班级:分析者:学号:指导教师:张桂莲设计时间:2014.6.3哈尔滨工业大学一、设计题目题目4绘制梁的剪力弯矩图输入:1.梁的总长度l2.支撑条件及量的各区段长度输入(左、右固定端悬臂梁;简支梁;左、右、双外伸梁)3.各载荷大小、作用位置及方向(qi、ai、bi;pj、cj、mk、dk)输出:1.结构构型图(图示)2.剪力、弯矩(图示)3.输出剪力、弯矩的最大值及截面位置。二、程序介绍1、简介本程序编译平台为MATLAB,能够对六种梁(左固定端悬臂梁、右固定端悬臂梁、简支梁、左外伸梁、右外伸梁、双外伸梁)在集中载荷、均布载荷及弯矩作用下的剪力、弯矩进行求解并绘制剪力、弯矩图。本程序基于MATLAB的图形用户界面(GUI)功能,操作简单、运算稳定、界面简约美观,有良好的交互性。2、程序使用方法此程序运行环境为安装有MATLABR2011a或以上版本的计算机。要运行此程序,首先打开MATLAB,在其中打开“KaiShiJieMian.m”文件,在函数编辑窗口里点击运行按钮(或按F5键),程序便开始启动。启动画面如下:图1启动界面点击“进入”即可进入选择梁的类型界面,在此界面中,使用者根据实际情况选择要研究的梁的类型,点击即可进入相应梁的计算界面。例如想要计算双外伸梁,则点击“6、双外伸梁”即可进入计算界面,若想返回开始界面,则点击“返回开始界面”即可。图2梁的选择界面图3梁的计算界面此程序可以计算梁在集中力、均布力和集中力偶的作用下梁的剪力和弯矩,并求出剪力的最大值和弯矩的最大值。以双外伸梁为例,对照左侧参数输入提示,在相应文本框里输入梁的基本参数,如弹性模量E、长度L,和载荷大小及位置,如均布力q、均布力起始位置b1、结束位置b2。输入完毕后点击“计算”按钮,在作图框内便显示出梁的剪力和弯矩图和最大值点,在结果文本框内便得出相应最大值和最大值所在位置。若要改变参数,先点击“清除”按钮,使做图框和结果文本框初始化,再更改相应参数,再次点击“计算”。三、程序设计过程以左固定端悬臂梁为例,首先选取坐标系,确定载荷大小、类型和位置坐标,然后分别计算单个载荷所对应的支反力和力矩,用公式计算位置x处对应的剪力和弯矩值,最后把各个载荷产生的在位置x处的剪力和弯矩值相加,便得出总的剪力和弯矩值。要注意的是,集中力和均布力取向下为正,外力偶取逆时针为正。所用公式如下:图4左固定端悬臂梁计算示意图设F产生的支反力为FOy1,力偶为MO1,对应的剪力为Fsx1,弯矩为Mx1;q产生的支反力为FOy2,力偶为MO2,对应的剪力为Fsx2,弯矩为Mx2;M产生的支反力为FOy3,力偶为MO3,对应的剪力为Fsx3,弯矩为Mx3。则:FOy1=F;MO1=FOy1*a;FOy2=q*(b2-b1);MO2=q*(b2-b1)*(b2+b1)/2;FOy3=0;MO3=M;对于F:当x=a时,Fsx1=-FOy1;Mx1=FOy1*x-MO1;当ax=L时Fsx1=0;Mx1=0;对于q:当x=b1时Fsx2=-FOy2;Mx2=FOy2*x-MO2;当b1x=b2时Fsx2=-FOy2+q*(x-b1);Mx2(ff)=FOy2*x-MO2-(x-b1)^2*q/2;当b2x=L时Fsx2=0;Mx2=0;对于M:当x=c时Fsx3=0;Mx3=M;当cx=L时Fsx3=0;Mx3=0;最后,设合剪力为Fsx,合弯矩为Mx,则:Fsx=Fsx1+Fsx2+Fsx3;Mx=Mx1+Mx2+Mx3;对应程序如下所示:E=10^9*str2double(get(handles.edit1,'String'));L=str2double(get(handles.edit2,'String'));F=str2double(get(handles.edit3,'String'));a=str2double(get(handles.edit4,'String'));q=str2double(get(handles.edit5,'String'));b1=str2double(get(handles.edit6,'String'));b2=str2double(get(handles.edit7,'String'));M=str2double(get(handles.edit8,'String'));c=str2double(get(handles.edit9,'String'));x=[0:L/500:L];FOy1=F;MO1=FOy1*a;FOy2=q*(b2-b1);MO2=q*(b2-b1)*(b2+b1)/2;FOy3=0;MO3=M;leng=length(x);xx1=round(a/L*leng);xx21=round(b1/L*leng);xx22=round(b2/L*leng);xx3=round(c/L*leng);forii=1:lengifii=xx1Fsx1(ii)=-FOy1;Mx1(ii)=FOy1*(ii-1)*L/500-MO1;elseFsx1(ii)=0;Mx1(ii)=0;endendforff=1:lengifff=xx21Fsx2(ff)=-FOy2;Mx2(ff)=FOy2*(ff-1)*L/500-MO2;elseifff=xx22Fsx2(ff)=-FOy2+q*((ff-1)*L/500-b1);Mx2(ff)=FOy2*(ff-1)*L/500-MO2-((ff-1)*L/500-b1)^2*q/2;elseFsx2(ff)=0;Mx2(ff)=0;endendendforpp=1:lengifpp=xx3;Fsx3(pp)=0;Mx3(pp)=M;elseFsx3(pp)=0;Mx3(pp)=0;endendflag1=1;flag2=1;Fsx=Fsx3+Fsx2+Fsx1;Mx=Mx3+Mx2+Mx1;forjj=1:lengifabs(Fsx(jj))=abs(Fsx(flag1))flag1=jj;endifabs(Mx(jj))=abs(Mx(flag2))flag2=jj;endendyy=0*ones(1,leng);yyy2=abs(Fsx);yyyy2=max(yyy2);yyy3=abs(Mx);yyyy3=max(yyy3);axes(handles.axes2);gridonplot(x,yy,'LineWidth',2);axis([0,L,-2*yyyy2,2*yyyy2]);holdonplot(x,Fsx,'LineWidth',2);holdonxxx1=L/500*(flag1-1);plot(xxx1,Fsx(flag1),'bo','MarkerSize',10);holdonforkk=1:4:lengplot([x(kk),x(kk)],[0,Fsx(kk)],'LineWidth',0.4)endxlabel('x/m');ylabel('¼ôÁ¦Fs/N');axes(handles.axes3);gridonplot(x,yy,'LineWidth',2);axis([0,L,-1.2*yyyy3,1.2*yyyy3]);holdonplot(x,Mx,'LineWidth',2);holdonxxx2=L/500*(flag2-1);plot(xxx2,Mx(flag2),'bo','MarkerSize',10);forll=1:4:lengplot([x(ll),x(ll)],[0,Mx(ll)],'LineWidth',0.4)endstr1=num2str(yyyy2);str2=num2str(xxx1);set(handles.edit10,'String',str1);set(handles.edit11,'String',str2);str3=num2str(yyyy3);str4=num2str(xxx2);set(handles.edit12,'String',str3);set(handles.edit13,'String',str4);从程序文本框中输入参数值,输入完毕后点击“计算”按钮,在作图框内便显示出梁的剪力和弯矩图和最大值点,在结果文本框内便得出相应最大值和最大值所在位置。其他梁的程序设计过程也如此,这里不再叙述四、程序算例下面给出各个梁的算例。1、左固定端悬臂梁计算例题例1.有一左固定端悬臂梁长l=4m,在梁中间作用有集中力P=4N,梁右端作用有集中力偶m=5N·m,左端作用均布载荷,载荷集度q=2N/m,作用图示如下。请作出梁的剪力弯矩图,并求出剪力弯矩的最大值与其出现位置。计算结果:图5计算结果截图根据题意可得FA=8N,MB=7N·m,将梁分为AC、BC段进行分析,即可作出梁的剪力、弯矩图,所作图形与程序所作结果相同。从剪力、弯矩图上显然可以看出剪力最大值Fmax=8N,弯矩最大值Mz=7N·m,均与程序相同,故此段程序编写正确。2、右固定端悬臂梁计算例题例2.有一右固定端悬臂梁长l=2m,在梁中间作用有集中力F=5N,梁右端作用竖直向下的集中力P,大小为5N,在梁的0.5m到1.5m作用有均布载荷,载荷集度为q=2N/m,梁左端作用有顺时针集中力偶m=10N·m,作用图示如下。请作出梁的剪力弯矩图,并求出剪力弯矩的最大值与其出现位置。计算结果:根据题意可得FB=7N,MA=5N·m,将梁分为AD、DC、CE、EB段进行分析即可作出梁的剪力弯矩图,所作图形与程序结果相同。从剪力、弯矩图上显然可以看出剪力最大值Fmax=7N(出现在EB段,本段程序显示结果在E截面处),弯矩最大值Mz=5N·m(出现在AD段,本段程序显示结果在A截面处),均与程序相同,故此段程序编写正确。图6计算结果截图3、简支梁计算例题例3.已知一横梁长l=4m,两端铰支。现在x=2m处作用一大小为4N、方向竖直向下的集中力,并且在整根梁上作用有竖直向下的均布载荷,大小为q=2N/m,作用示意图如下。试做出梁上的剪力和弯矩图,并求出剪力弯矩的最大、最小值及它们出现的位置。计算结果:求支反力得FA=6N,FB=6N,作梁的剪力弯矩图与程序所作结果相同,从剪力弯矩图上显然可以得到剪力最大值Fmax=6N,弯矩最大值Mz=8N·m,与程序相同。理论计算绘制图示上可以看出剪力最大值在梁的左右两端点处取到(x=0和x=4m处),程序中只显示了一个(x=4m处)。图7计算结果截图4、左外伸梁计算例题例4.已知一左外伸梁长3m,可动铰支座距左端面1m,在x=2m处作用一大小为P=10N,方向竖直向下的集中力,图形如下。试做出梁上的剪力和弯矩图,并求出剪力弯矩的最大、最小值及它们出现的位置。计算结果:图8计算结果截图求支反力得FA=2.5NFB=7.5N,作梁的剪力弯矩图与程序所作结果基本相同(程序所作剪力弯矩图中有断点存在,这是由于本程序绘制剪力弯矩图采用的是散点法,当剪力弯矩值有突变时程序计算的因数值不连续而产生“跳跃”现象),从剪力弯矩图上显然可以得到剪力最大值Fmax=7.5N,弯矩最大值Mz=7.5N·m,与程序相同。5、右外伸梁计算例题例5.已知一右外伸梁长1.5米,右支点距右端面0.5米,在两支架中间作用一大小为P=5N,方向竖直向上的集中力,图形如下,试做出梁上的剪力和弯矩图,并求出剪力弯矩的最大、最小值及它们出现的位置。计算结果:图9计算结果截图求支反力得FA=2.5NFB=2.5N,作梁的剪力弯矩图与程序所作结果相同(程序所作剪力弯矩图中有断点存在,这是由于本程序绘制剪力弯矩图采用的是散点法,当剪力弯矩值有突变时程序计算的因数值不连续而产生“跳跃”现象),从剪力弯矩图上显然可以得到剪力最大值Fmax
本文标题:哈工大材料力学上机报告--绘制梁的剪力弯矩图
链接地址:https://www.777doc.com/doc-4855094 .html