《机械振动基础》大作业(2016年春季学期)题目多自由度振动系统的固有频率和固有阵型姓名学号班级专业报告提交日期哈尔滨工业大学《机械振动基础》大作业1报告要求1.请根据课堂布置的2道大作业题,任选其一,拒绝雷同和抄袭;2.报告最好包含自己的心得、体会或意见、建议等;3.报告统一用该模板撰写,字数不少于3000字,上限不限;4.正文格式:小四号字体,行距为1.25倍行距;5.用A4纸单面打印;左侧装订,1枚钉;6.课程报告需同时提交打印稿和电子文档予以存档,电子文档由班长收齐,统一发送至:liuyingxiang868@hit.edu.cn。7.此页不得删除。评语:成绩(15分):教师签名:年月日《机械振动基础》大作业2基于MATLAB的对多自由度振动系统的固有频率和固有阵型的分析一、利用MATLAB编程求七自由度系统的固有频率和固有振型模型如下图所示系统中各质量为(kg):m1=2;m2=4;m3=5;m4=6;m5=5;m6=4;m7=2;各处弹性系数为(N/m)k1=5;k2=5;k3=5;k4=5;k5=5;k6=5;k7=5;二、实验程序如下:clearclosem1=2;m2=4;m3=5;m4=6;m5=5;m6=4;m7=2;k1=5;k2=5;k3=5;k4=5;k5=5;k6=5;《机械振动基础》大作业3k7=5;m=[m1,0,0,0,0,0,0;0,m2,0,0,0,0,0;0,0,m3,0,0,0,0;0,0,0,m4,0,0,0;0,0,0,0,m5,0,0;0,0,0,0,0,m6,0;0,0,0,0,0,0,m7];k=[k1+k2,-k2,0,0,0,0,0;-k2,k2+k3,-k3,0,0,0,0;0,-k3,k3+k4,-k4,0,0,0;0,0,-k4,k4+k5,-k5,0,0;0,0,0,-k5,k5+k6,-k6,0;0,0,0,0,-k6,k6+k7,-k7;0,0,0,0,0,-k7,k7];[V,D]=eig(k,m)forj=1:1:7w(j)=sqrt(D(j,j));fori=1:1:7absV(i,j)=abs(V(i,j));endendmax=(absV);forj=1:1:7fori=1:1:7V(i,j)=V(i,j)/max(j);end《机械振动基础》大作业4endwfigurex=1:7;fora=1:7subplot(3,4,a),plot(x,V(x,a));holdon;gridon;title('振型图');end三、将程序在MATLAB上运行,得到结果如下图(1)多自由度系统的固有频率得到振型图如下《机械振动基础》大作业5图(2)多自由度系统的固有阵型图(2)中分别为本实验条件下,模拟出来小车的振动的阵型图。四、心得、体会1、对多自由度系统的认识和学习多自由度系统,是指必须通过两个以上的独立广义坐标才能够描述系统运动特性的系统,或者说是自由度数目多于一个,但又不属于连续弹性体(自由度数目为无穷多个)的系统。在实际工程问题中,大多都是多自由振动的系统,由此可见,我们的大作业非常有实际的应用价值。在学习本章节的时候,就有一个问题出现,多自由度的系统离我们很遥远,至少实在数学计算中,一个复杂的两自由度系统就需要用公式推导一段时间,才能得出相应的参数(运动的微分方程和相关的固有频率),期间需要列出功和能的方程、求导以及化简等步骤。到后来学习到多自由度系统时,就会发现,开式我们对多自由度系统的学习也只是没有找到方法而已,在引入新的方法后,替代了原有的直接法列方程,对我们有了很大的帮助,就拿刚度、柔度计算发来说就它们的规律而言,就要比直接法快的很多。所谓直接法,就是直接应用动力学的基本定律或定理(例如牛顿第二定律或达朗伯原理)建立系统运动微分方程的方《机械振动基础》大作业6法。当我们使用刚度系数法,解决简单的多自由度系统就很简单了,刚度系数法又称单位位移法,是把一个动力学系统当作一个静力系统来看待,用静力学方法确定出系统所有的刚度系数(刚度矩阵中元素),借助于这些系数建立系统的运动方程。对于本题来说,分别给每一个质量块一个单位的位移,之后再去分析,用隔离体分析法建立的运动方程,就能将矩阵中的参数求解出来。推广来说的话,用刚度系数法同样也可以建立扭转振动系统微分方程,只需将作用力F变成作用力矩M,单位位移变成单位角位移,按上述方法分析即可。类比于刚度系数法,柔度系数法的原理也如此,只是将给质量块的单位位移改成单位力,解决问题的方法同刚度系数法想类似。这两种方法就要比直接法更简单的写出多自由度振动系统的矩阵方程。当然,列出相应的矩阵的方程只是求解问题的一个步骤。本次我选择的七自由度的系统,系统共有七个固有频率,每一个质量块都有自己的运动方式,分别对应七个不同的阵型图,实际的振动则是这七个振动的叠加。对多自由度系统进行模态分析,模态分析的要点在于利用模态矩阵进行坐标变换,将描述系统的原有坐标用一组新的特定坐标来代替。这组新的坐标就称为模态坐标或正则模态坐标。采用了模态坐标或正则模态坐标后,就使系统的振动微分方程组转变成一组相互独立的二阶常微分方程组,其中的每一个方程都可以独立求解,就像单自由度系统一样我们列出矩阵方程的目的便在于,通过计算机来解方程,这是很省力和准确的,也是以后的大势所趋。我自己对多自由度的系统方面的知识,也是流于表面,没有很深的学习,我感觉还有很多高深的问题,毕竟本次大作业所给出的题目是多自由度系统中最最简单和基础的,老师没有加入旋转的物体、没有阻尼的干扰等等,都让我认识到自己在机械振动方面还有很大的学习进步空间,特别的本次课程也激发了我对振动的兴趣,这是利用学到的知识来解决实际问题的基础应用学科,对我今后的发展也至关重要。而在上学期的机械系统控制课程中,对方面也有初步涉足,相比于机械设计和机械原理,同样有着很大的魅力。我学到的是一种解决问题的方法,同时也应用了数学方面的一些知识,综合运用下来完成本次课程和大作业。2.对matlab的学习和认识MATLAB是matrix&laboratory两个词的组合,意为矩阵工厂(矩阵实验室)。是由美国mathworks公司发布的主要面对科学计算、可视化以及交互式程序设计的高科技计算环境。MATLAB是一种用于算法开发、数据可视化、数据分析以及数值计算的高级技术计算语言和交互式环境。除了矩阵运算、绘制函《机械振动基础》大作业7数/数据图像等常用功能外,MATLAB还可以用来创建用户界面及与调用其它语言(包括C,C++和FORTRAN)编写的程序。第一点,本次大作业对MATLAB的矩阵运算、绘制函数和数据、实现算法、创建用户界面等功能进行了使用。作为matlab的基本单位是矩阵,我们的大作业就使用了矩阵作为微分方程的表达方式,作为对本门课程学习的一项计算机的辅助工具,其强大、高效的计算速率和使对多自由度系统的计算简单化。这也使这个软件在工程上的应用更加广泛。Matlab是一个高级的矩阵/阵列语言,它包含控制语句、函数、数据结构、输入和输出和面向对象编程特点。用户可以在命令窗口中将输入语句与执行命令同步,也可以先编写好一个较大的复杂的应用程序(M文件)后再一起运行。第二点,本次大作业中用到了数据可视化功能,以将向量和矩阵用图形表现出来,在上述的程序中subplot(3,4,a),plot(x,V(x,a));表示可以将该7个自由度系统的七张不同的阵型图以4*3的方式体现出来,这种集成化的数据可视化,在本次大作业起了很大的作用,也让我们对实验结果一目了然,如果想得到更加精确的数字可视化功能,仍能够改变变成使图片一张张的显示出来。今后,我们还有很多方面应用这个软件,自学已经成为了进步的一个主要的方式。它将在我们学习其他工程类的课程有很大帮助作用。除此之外,其它的功能还等待的我们去学习和研究。3.对本课程的意见和建议纵观整个课程,自我感觉内容便少一点,相关的例题或者说与实际的应用练习少一点,我们没有得到充分的练习。我感觉老师可以通过留小作业等方式,强化我们在这方面的能力,让我们你能够更好的利用学习到的知识和技能。考试方面的建议,闭卷考试能够让我们学到去记忆更多的知识和公式,然而,在今后的实际使用中,我们不可能只是通过记忆来完成工作,我认为向这类的方法类的、运用类的学科,数学公式的推导、结论的记忆、基础知识点或者概念的记忆不会重要于本课程的使用价值,开卷对学生来说,就可以花更多的时间用在对一个系统结构分析能力的增长,而不是花很大经历关注一些名词的解释和公式结论的记忆。只是我的拙见,当然闭卷会更好,让我们学会应该学到的知识。4.对本次大作业的总结通过本次大作业,我学到了很多课堂上学不到的知识和解决问题的方式方法。不仅学习到了,有关机械振动中解决多系统固有频率和固有阵型的方法,也初步的学习了matlab有管本次大作业的知识。感觉老师安排的大作业为课程增《机械振动基础》大作业8光添彩,对我们很有教育意义。在今后遇到实际工程问题中,大多都是多自由振动的系统,由此可见,我们的大作业非常有实际的应用价值。如果有能力,老师也推荐学习对有关有限元分析软件的学习,我们也要端正学习态度,在机械中更加注意软件对我们的重要性,将对软件的学习同时提上日程。这种感觉在大三的课程中尤为明显,在今后的学习工作中,现代科技机械一定离不开,高等数学和软件的辅助。本门课程和本次大作业对我们将会是一个很好的引导,为我们指明了一条正确的道路。