第9章MATLAB工具箱简介
第9章 MATLAB工具箱简介
9.1符号数学工具箱简介 。 顾名思义,符号数学是以符号(如a,b,c,x,y, )为对象的数学,区别于以数字为对象的 MATLAB基本部分。在大学教育中,符号数学是 每门课都用到的,因此,专门以不到100美元提 供给大学生的版本(Student Edition of MATLAB) 中就包括了这个工具箱。 国外用MATLAB介绍科学计算的教科书中,大概 有15%~20%的例题和习题会用到这个工具箱。 考虑到在大学教学中,推理还是一项基本功。而 且在大多数大学课程中,也没有太复杂的推理。 一般说,把数值计算交给计算机做,绝大多数老 师还是能接受的,如果把推理也交给计算机,对 教学是杏有利,可能会有较大争议
9.1 符号数学工具箱简介 • 顾名思义,符号数学是以符号(如a,b,c,x,y, z)为对象的数学,区别于以数字为对象的 MATLAB基本部分。在大学教育中,符号数学是 每门课都用到的,因此,专门以不到100美元提 供给大学生的版本(Student Edition of MATLAB) 中就包括了这个工具箱。 • 国外用MATLAB介绍科学计算的教科书中,大概 有15%~20%的例题和习题会用到这个工具箱。 • 考虑到在大学教学中,推理还是一项基本功。而 且在大多数大学课程中,也没有太复杂的推理。 一般说,把数值计算交给计算机做,绝大多数老 师还是能接受的,如果把推理也交给计算机,对 教学是否有利,可能会有较大争议
9.1.1 Symbolic工具箱的主要功能 (1)用符号定义各种函数(syms,symop)等: (2)对这些函数式进行代数和三角运算,包括因式分 解(factor)、变量置换(subs)等; (3)微分和积分运算(dif,int)等; (4)函数的整理和化简(simplify,simple)等; (5)可变精度的运算; (6)解非线性方程(solve)、微分方程(dsolve等; (7)线性代数和矩阵运算((linsolve)等; (8)拉普拉斯变换(laplace)、傅里叶变换等
9.1.1 Symbolic工具箱的主要功能 (1)用符号定义各种函数(syms,symop)等; (2)对这些函数式进行代数和三角运算,包括因式分 解(factor)、变量置换(subs)等; (3)微分和积分运算(diff,int)等; (4)函数的整理和化简(simplify,simple)等; (5)可变精度的运算; (6)解非线性方程(solve)、微分方程(dsolve等; (7)线性代数和矩阵运算(linsolve)等; (8)拉普拉斯变换(laplace)、傅里叶变换等
9.1.2符号数学式的表示方法1 Symbolic工具箱要能分析字符串的含义。首先要 对符号变量作出定义,用语句“x=Sym(x); ” 就定义了x是一个字符串变量,此后键入的算式 f=3*x2+5*x+2,或y=sin(x)就具有了符号函数的 意义,和y也自然成为字符串变量。 ·如果一个数学符号表示式中有多个符号,如 ·Z=a*tn2+b*t+c ·可以用多个符号变量定义语句放在此式前面。 。syms a b c t
9.1.2 符号数学式的表示方法1 • Symbolic工具箱要能分析字符串的含义。首先要 对符号变量作出定义,用语句“x = sym('x');” 就定义了x是一个字符串变量,此后键入的算式 f=3*x^2+5*x+2,或y=sin(x)就具有了符号函数的 意义,f和y也自然成为字符串变量。 • 如果一个数学符号表示式中有多个符号,如 • z = a*t^2+b*t+c • 可以用多个符号变量定义语句放在此式前面。 • syms a b c t
9.1.2符号数学式的表示方法2 ·为了节省篇幅,表中尽量选了一些简单的推导式, 实际上可以推导很繁的式子。一般说来,在公式 推导意义下使用MATLAB是很方便的。只是不给 自变量赋以数值,而代之以符号,其语句为。 syms自变量1自变量2自变量3 。 以后的编程和普通MATLAB程序完全相同。其执 行的结果自然是表达式而不是数值解。如果要做 进一步的工作,例如化简、代换、代入数值、解 联立方程等等,那就需要对这个工具箱有较完整 的了解
9.1.2 符号数学式的表示方法2 • 为了节省篇幅,表中尽量选了一些简单的推导式, 实际上可以推导很繁的式子。一般说来,在公式 推导意义下使用MATLAB是很方便的。只是不给 自变量赋以数值,而代之以符号,其语句为。 syms 自变量1 自变量2 自变量3 … • 以后的编程和普通MATLAB程序完全相同。其执 行的结果自然是表达式而不是数值解。如果要做 进一步的工作,例如化简、代换、代入数值、解 联立方程等等,那就需要对这个工具箱有较完整 的了解
9.2系统仿真(Simulink)工具箱 Simulink是面向框图的仿真软件,有以下功能: (1)用方框图的绘制代替程序的编写。构成系统框 图有三个步骤,即选定典型环节、相互联接和给 定环节参数。都可以用鼠标和键盘来完成。 (2)仿真的建立和运行是智能化的。首先,画好了 框图并存起来,它就自动建立起了仿真的方程; 其次,在运行时用户可以不给步长,只给出要求 的仿真精度,软件会自动选择步长,使得仿真具 有最快的速度。 (3)输入输出信号来源形式的多样化。这就扩大了 仿真系统与各种外部软件和硬件的接口能力
9.2 系统仿真(Simulink)工具箱 • Simulink是面向框图的仿真软件,有以下功能: • (1)用方框图的绘制代替程序的编写。构成系统框 图有三个步骤,即选定典型环节、相互联接和给 定环节参数。都可以用鼠标和键盘来完成。 • (2)仿真的建立和运行是智能化的。首先,画好了 框图并存起来,它就自动建立起了仿真的方程; 其次,在运行时用户可以不给步长,只给出要求 的仿真精度,软件会自动选择步长,使得仿真具 有最快的速度。 • (3)输入输出信号来源形式的多样化。这就扩大了 仿真系统与各种外部软件和硬件的接口能力
9.2.2环节库及框图的建立1 回x 一回x File Edit Simulation Format 61 ■ odesk,or demo. ur. 日lodsets&a Toolboxes Demos 口▣x ools Constant Signal 恩可 =AG+BU y=Cx+Du enerato Signal State-Space Scope ☑ Generator Library:simulin▣☒ Sine wave Repeating Eile Edit Simulation Format Sequence 1001s 皿 m Discrete Pulse Pulse Chirp Signal Generator Generator Scope XY Graph D 12:34 Clod Digital Clodk 0 untitled.mat [T.U] From File From simout notspace To File To Wlorspac 四 W 呼 到开始③@☑威守为风白编回浏四M白m人到u费L费L到L个总8”们函11:41
9.2.2 环节库及框图的建立1
环节库及框图的建立2 1.环节库及其输入 ·在Simulink中,设有几十种典型环节,分列在信号源 (Sources)、输出信号漏(Sinks)、线性(Linear)、 非线性(Nonlinear)、离散(Discret)、联接 (Connections)等几大类图标子菜单中。要开始建立框 图,可在MATLAB的命令窗中,键入simulink,屏幕上会 出现两个视窗。一个是上述的几类库图标,另一个是供绘 制框图用的空白视窗,如图9.1。 。 双击Sources图标,屏幕上将弹出信号源中包含的所有子 图标,如图9.1左下方所示。包括常数信号、信号发生器、 阶跃信号、斜坡信号、重复序列、时钟信号、随机序列、 从文件输入、从工作空间输入等十多种
环节库及框图的建立2 • 1.环节库及其输入 • 在Simulink中,设有几十种典型环节,分列在信号源 (Sources)、输出信号漏(Sinks)、线性(Linear)、 非线性(Nonlinear)、离散(Discret)、联接 (Connections)等几大类图标子菜单中。要开始建立框 图,可在MATLAB的命令窗中,键入simulink,屏幕上会 出现两个视窗。一个是上述的几类库图标,另一个是供绘 制框图用的空白视窗,如图9.1。 • 双击Sources图标,屏幕上将弹出信号源中包含的所有子 图标,如图9.1左下方所示。包括常数信号、信号发生器、 阶跃信号、斜坡信号、重复序列、时钟信号、随机序列、 从文件输入、从工作空间输入等十多种
环节库及框图的建立3 ·双击Sinks图标,屏幕上弹出的子图标如图9.1右 下方所示。其中包括示波器、X-Y记录仪(X坐标 是状态变量)、数字显示、输出到文件、输出到 工作空间等等。 ·Linear图标下的库,包含放大环节、纯积分环节、 纯微分环节、传递函数模型、零极增益模型、状 态空间模型、相加器等等。读者可自行打开其他 库来查看其内容,此处从略。 。 为了建立所需的框图,可以用鼠标器拖曳的方法, 将所要的环节移到那个空白的文件中,排列在需 要的位置上
环节库及框图的建立3 • 双击Sinks图标,屏幕上弹出的子图标如图9.1右 下方所示。其中包括示波器、X-Y记录仪(X坐标 是状态变量)、数字显示、输出到文件、输出到 工作空间等等。 • Linear图标下的库,包含放大环节、纯积分环节、 纯微分环节、传递函数模型、零极增益模型、状 态空间模型、相加器等等。读者可自行打开其他 库来查看其内容,此处从略。 • 为了建立所需的框图,可以用鼠标器拖曳的方法, 将所要的环节移到那个空白的文件中,排列在需 要的位置上
环节库及框图的建立4 ·2.环节的联接 把各环节的端口按框图联接起来,联接的方法是把 鼠标指在线段的始端,按下左键不放,移动鼠标, 一直引到线段的终点端口再释放。此时在终点上 将出现箭头。一般环节都只有一个输入端,有些 环节如乘法器、逻辑运算等具有双输入端,相加 器则可能有更多的输入端,需要先定义输入端的 数目。 ·3.环节参数的设定 用“双击左键”的方法,逐个打开各个环节的参数 设定窗口以修改其中的参数,这些参数可以用 MATLAB中任何合法的方式表示
环节库及框图的建立4 • 2.环节的联接 把各环节的端口按框图联接起来,联接的方法是把 鼠标指在线段的始端,按下左键不放,移动鼠标, 一直引到线段的终点端口再释放。此时在终点上 将出现箭头。一般环节都只有一个输入端,有些 环节如乘法器、逻辑运算等具有双输入端,相加 器则可能有更多的输入端,需要先定义输入端的 数目。 • 3.环节参数的设定 用“双击左键”的方法,逐个打开各个环节的参数 设定窗口以修改其中的参数,这些参数可以用 MATLAB中任何合法的方式表示