当前位置:文档之家› 浙师大机械控制工程基础实验报告资料

浙师大机械控制工程基础实验报告资料

机械控制工程基础实验报告学院工学院职业技术教育学院班级机械设计制造及其自动化姓名XXX学号xxxxxxxx实验项目名称: Matlab语言基础实验《机械控制工程基础》实验报告之一一、实验目的和要求1、掌握Matlab软件使用的基本方法2、熟悉Matlab的数据表示、基本运算和程序控制语句3、熟悉Matlab绘图命令及基本绘图控制4、掌握Matlab软件求拉普拉斯变换与逆变换基本方法二、实验内容1) MATLAB工作环境平台Command图1 在英文Windows 平台上的MATLAB6.5 MATLAB工作平台①命令窗口(Command Window)命令窗口是对 MATLAB 进行操作的主要载体,默认的情况下,启动MATLAB 时就会打开命令窗口,显示形式如图 1 所示。

一般来说,MATLAB的所有函数和命令都可以在命令窗口中执行。

掌握 MALAB 命令行操作是走入 MATLAB 世界的第一步。

命令行操作实现了对程序设计而言简单而又重要的人机交互,通过对命令行操作,避免了编程序的麻烦,体现了MATLAB所特有的灵活性。

在运行MATLAB后,当命令窗口为活动窗口时,将出现一个光标,光标的左侧还出现提示符“>>”,表示MATLAB正在等待执行命令。

注意:每个命令行键入完后,都必须按回车键!当需要处理相当繁琐的计算时,可能在一行之内无法写完表达式,可以换行表示,此时需要使用续行符“…”否则 MATLAB 将只计算一行的值,而不理会该行是否已输入完毕。

使用续行符之后 MATLAB 会自动将前一行保留而不加以计算,并与下一行衔接,等待完整输入后再计算整个输入的结果。

在 MATLAB 命令行操作中,有一些键盘按键可以提供特殊而方便的编辑操作。

比如:“↑”可用于调出前一个命令行,“↓”可调出后一个命令行,避免了重新输入的麻烦。

当然下面即将讲到的历史窗口也具有此功能。

②历史窗口(Command History)历史命令窗口是 MATLAB6 新增添的一个用户界面窗口,默认设置下历史命令窗口会保留自安装时起所有命令的历史记录,并标明使用时间,以方便使用者的查询。

而且双击某一行命令,即在命令窗口中执行该命令。

③当前目录窗口(Current Directory)在当前目录窗口中可显示或改变当前目录,还可以显示当前目录下的文件,包括文件名、文件类型、最后修改时间以及该文件的说明信息等并提供搜索功能。

④工作空间管理窗口(Workspace)工作空间管理窗口是 MATLAB 的重要组成部分。

在工作空间管理窗口中将显示所有目前保存在内存中的 MATLAB 变量的变量名、数据结构、字节数以及类型,而不同的变量类型分别对应不同的变量名图标。

2)MATLAB 的基本规定(1)数值的表示MATLAB 的数值采用十进制,可以带小数点或负号。

以下表示都合法。

0,-100,0.008,12.752,1.8e-6 ,8.2e52(2)变量命名规定①变量名、函数名:字母大小写表示不同的变量名。

如A 和a 表示不同的变量名;sin是MATLAB 定义的正弦函数,而Sin,SIN 等都不是。

②变量名的第一个字母必须是英文字母,不能是数字,最多可包含31 个字符(英文、数字和下连字符)。

如A21 是合法的变量名,而3A21 是不合法的变量名。

③变量名中不得包含空格、标点,但可以有下连字符。

如变量名A _b21 是合法变量名,而A,21 是不合法的。

(3)基本运算符表1 MATLAB 表达式的基本运算符(4)MATLAB 默认的预定义变量在MATLAB 中有一些预定义变量(predefined variable)。

每当MATLAB 启动,这些变量就被产生。

用户在定义变量时,尽量避开表2所列预定义变量名,以免产生混淆。

表2 MATLAB 的预定义变量3)MATLAB 图形绘制在二维曲线绘制中,最基本的指令是plot ( )函数。

如果用户将x 和y 两组数据分别在向量x 和y 中存储,且它们的长度相同,调用该函数的格式为:plot (x ,y )这时将在一个图形窗口上绘出所需要的二维图形。

在MATLAB 命令窗口提示符“>>”下键入 help plot ,可得到plot ( )函数的相关内容,如曲线颜色和线型的改变。

(1)绘制余弦曲线y=cos(t),t ∈[0,2π] 解:>> t=0:pi/100:2*pi; >> y=cos(t)’ >> plot(t,y)时间速度(2)在同一坐标系中绘制余弦曲线y=cos(t-0.25)和正弦曲线y=sin(t-0.5), t ∈[0,2π] 解:t=0:pi/100:2*pi;>> y1=cos(t-0.25);y2=sin(t-0.5); >> plot(t,y1,t,y2)123456时间速度4)MATLAB求拉普拉斯变换与逆变换,其中,(1)在系统默认自变量和参变量情况下求f= t3e3t-1的Laplace变换。

>> syms x y z t %定义符号变量>> f=t^3*exp(3*t-1); %定义符号函数>> laplace(f) %求laplace变换ans =6*exp(-1)/(s-3)^4(2)在系统默认自变量和参变量情况下求函数 (s2+4)/(s3+s2+2s)的laplace 逆变换。

>> syms x y t s z a b u %定义符号变量 >> f=(s^2+4)/(s^3+2*s^2+2*s); %定义符号函数>> ilaplace(f) %求符号函数的laplace 逆变换 ans =-exp(-t)*cos(t)-3*exp(-t)*sin(t)+2三. 实验结果与分析(包括运行结果截图、结果分析等)(1) 利用MATLAB 求[(学号后2位)t]与{[班级号]sin([学号后2位]t)}的拉普拉斯变换学号 13 ; 班级 2 ;即求: 1)13t 2) 2sin13t 1)2)(2) 建立P73页2-3(6、8、12、18)的传递函数;并利用MATLAB 求其相应的原函数 [P73.题]:使用matlab 进行下列函数的拉式反变换 (2)3()(1)(2)s G s s s +=++(4)21()(1)(4)G s s s =++(6)2210()(4)(1)G s s s s =++(8)22328()(24)(2)s s G s s s s s ++=+++(10)2122()()s a s a G s s s a ++=+(12)22(1)()(2)s G s s s s +=++(14)2212()25s G s s s +=++(16)(3)(4)(5)()(1)(2)s s s G s s s +++=++(18)4322345()(1)s s s s G s s s ++++=+ diarc 狄拉克函数/单位脉冲函数(3)求P73页2-5(1-2)传递函数的零、极点并绘制零极点图 1)25(1)()(2)(5)s G s s s s +=++clc;clear;close all; Gs=zpk([-1],[0 0 -2 -5],5) pzmap(Gs) [p,z]=pzmap(Gs)p = 0 0 -2 -5 z=-12)22(1)()(2)(32)s s G s s s s +=+++ clc;clear;close all; Gs=tf([1 1 0 0],[1 5 8 4]) pzmap(Gs)[p,z]=pzmap(Gs) p = -2.0000 -2.0000 -1.000 z = 0 0 -1四. 总结及其心得体会(记录实验感受、上机过程中遇到的困难及解决办法、遗留的问题、意见和建议等。

)这节实验课我们主要了解了拉普拉斯变换与拉普拉斯逆变换的matlab编程方法,以计算机的程序算法解决传递函数的繁杂的变换。

也学习啦零点极点的画图程序。

主要是掌握程序的编程规则。

有时候一个传递函数有多种表示方法,需要了解哪个更适用、更简便。

总的来说,初次的实验掌握的基本的程序书写方法是比较重要的。

老师上课很幽默舒畅,讲课主次内容分的比较好,课上实验节奏感掌握的很好。

实验项目名称: 控制系统建模及模型转换《机械控制工程基础》实验报告之二一、实验目的和要求1、掌握建立控制系统模型的函数及方法;2、掌握控制系统模型间的转换方法及相关函数;3、掌握典型系统模型的生成方法;4、掌握环节方框图的化简方法。

二、实验内容(1)tf ( )函数若要在MATLAB 环境下得到传递函数的形式,可以调用tf ( )函数。

该函数的调用格式为 G = tf ( num , den );其中num , den 分别为系统传递函数的分子和分母多项式系数向量。

返回的G 为传递函数形式。

但如果分子或分母多项式给出的不是完全的展开的形式,而是若干个因式的乘积,则事先需要将其变换为完全展开的形式,两个多项式的乘积在MATLAB 下借用卷积求取函数conv( )得出,其调用格式为 p=conv(p1,p2)其中p1和p2为两个多项式,调用这个函数就能返回乘积多项式p 。

如果有3个多项式的乘积,就需要嵌套使用此函数,即p=conv(p1,conv(p2,p3)) 或 p=conv(conv(p1,p2),p3)请注意在调用时括号的匹配。

MATLAB 还支持一种特殊的传递函数的输入格式,在这样的输入方式下,应该先用s=tf(’s ’)定义传递函数算子,然后用数学表达式直接输入系统的传递函数。

请自己通过下面两个例子来演示和掌握tf ()和s=tf(’s ’)算子这两种输入方式。

例1 设系统传递函数 134223523423+++++++=s s s s s s s G输入方式一:num = [1, 5, 3, 2]; den = [1, 2, 4, 3, 1]; %分子多项式和分母多项式G = tf ( num , den ); %这样就获得系统的数学模型G 了。

这些命令可在命令行输入也可编成一个M 文件。

在MATLB 提示符“>>”下键入G ,或省略最后命令中分号,则可显示该数学模型。

输入方式二:s=tf(’s ’); G=( s^3 + 5* s^2 + 3* s + 2)/( s^4 + 2*s^3 + 4* s^2 + 3* s + 1); 任务一:设系统传递函数 432534++++=s s s s G 采用上面两种输入方式,输入其传递函数,并记录命令。

例2 设系统传递函数 )1)(43()1()4.2(5222+++++=s s s s s G此题分子或分母多项式给出的不是完全展开的形式,而是若干个因式的乘积,采用tf () 这一种输入法之前,应先用conv( )函数获得分子和分母多项式给出的完全展开的形式num 和den ,即输入命令:num=conv([0,5],[1,2.4]);den=conv(conv(conv([1,1],[1,1]),[1,3,4]),[1,0,1]);G=tf(num,den) %语句没有分号结尾,故将显示系统传递函数 Transfer function:5 s + 12-------------------------------------------------s^6 + 5 s^5 + 12 s^4 + 16 s^3 + 15 s^2 + 11 s + 4这种情况用算子方法可以更直观地输入系统模型,输入命令为 s=tf('s');G=5*(s+2.4)/((s+1)^2*(s^2+3*s+4)*(s^2+1));任务二:在MATLAB 命令窗口中对例2的这两种输入方法进行验证。

相关主题